nestjs 是一個支援使用 Typescript 語言開發的 nodejs 網路應用後端開發框架。
1.可讀性高:
對大部分的人能夠遵循一定規則讀懂系統
2.容易修改:
當要修改功能時,能夠方便替換元件
1. 沒有統一規範
nodejs 語言面向 web 開發為主。本身有許多後端框架,比如 express, koa, fastify 等等。然而,這些框架的特性是開發規範自由。
2. 沒有標準的設定環境工具
各式各樣的設定方式,導致維護困難或是可讀性不高。
具體而言,有以下幾點是 nestjs 的優點
1. 配置簡單
nestjs 屬於約定大於配置 (Convental over Configuration) 的框架。
代表只需要依照規範設定所需要的配置,其他則會產用預設值。
2. 具有一些標準的規範架構
需要透過標準寫法才能讓 nestjs 開發的應用建立起來。
所以具有其基礎架構,雖然有些部份還是很彈性。
但在遵守 nestjs 基礎規範的標準上,大部分的 nestjs 專案還是算是好讀
3. 具有內建的 DI 配置
這點讓 nestjs 應用開發方便可以把程式碼的耦合度相降低,讓可測試性提高。
然而,因為 nestjs 仍然是很具有彈性的框架。
有些不當的設計雖然可以運行,仍是可能讓 nestjs 開發的應用不好維護。
4. 具有內建的cli指令
跟 angular 一樣,為了方便搭建 nestjs 應用,官方出了一個 cli 工具可以方便建制 nestjs 配置。
主要不同於其他 nodejs 框架的點是上面nestjs 特性的第 2 點,能夠讓專案的可維護性增加。其他部份則是需要透過適當的遵守nestjs 特性第 2 點規則,來做服務開發設計。才能達到可維護性增加。